package org.aepscolombia.platform.models.entity;
// Generated Jan 13, 2014 2:36:33 PM by Hibernate Tools 3.2.1.GA


import java.util.HashSet;
import java.util.Set;
import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import static javax.persistence.GenerationType.IDENTITY;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.JoinTable;
import javax.persistence.ManyToMany;
import javax.persistence.OneToMany;
import javax.persistence.Table;

/**
 * CropsTypes generated by hbm2java
 */
@Entity
@Table(name="crops_types"
    ,catalog="madr_bd10"
)
public class CropsTypes  implements java.io.Serializable {


     private Integer idCroTyp;
     private String nameCroTyp;
     private Boolean statusCroTyp;
     private Set residualsClasifications = new HashSet(0);
     private Set diseaseses = new HashSet(0);
     private Set resultingProductses = new HashSet(0);
     private Set pestses = new HashSet(0);
     private Set marketses = new HashSet(0);
     private Set intercroppings = new HashSet(0);
     private Set genotypesSowings = new HashSet(0);
     private Set organicControlses = new HashSet(0);
     private Set controlsTypeses = new HashSet(0);
     private Set fertilizationses = new HashSet(0);
     private Set preparationsTypeses = new HashSet(0);
     private Set productionEventses = new HashSet(0);
     private Set irrigationsTypeses = new HashSet(0);
     private Set landUsesMarketses = new HashSet(0);
     private Set chemicalsSowings = new HashSet(0);
     private Set genotypeses = new HashSet(0);
     private Set sowingTypeses = new HashSet(0);
     private Set chemicalsControlses = new HashSet(0);
     private Set weedses = new HashSet(0);
     private Set seedsOriginses = new HashSet(0);

    public CropsTypes() {
    }

    public CropsTypes(String nameCroTyp, Boolean statusCroTyp, Set residualsClasifications, Set diseaseses, Set resultingProductses, Set pestses, Set marketses, Set intercroppings, Set genotypesSowings, Set organicControlses, Set controlsTypeses, Set fertilizationses, Set preparationsTypeses, Set productionEventses, Set irrigationsTypeses, Set landUsesMarketses, Set chemicalsSowings, Set genotypeses, Set sowingTypeses, Set chemicalsControlses, Set weedses, Set seedsOriginses) {
       this.nameCroTyp = nameCroTyp;
       this.statusCroTyp = statusCroTyp;
       this.residualsClasifications = residualsClasifications;
       this.diseaseses = diseaseses;
       this.resultingProductses = resultingProductses;
       this.pestses = pestses;
       this.marketses = marketses;
       this.intercroppings = intercroppings;
       this.genotypesSowings = genotypesSowings;
       this.organicControlses = organicControlses;
       this.controlsTypeses = controlsTypeses;
       this.fertilizationses = fertilizationses;
       this.preparationsTypeses = preparationsTypeses;
       this.productionEventses = productionEventses;
       this.irrigationsTypeses = irrigationsTypeses;
       this.landUsesMarketses = landUsesMarketses;
       this.chemicalsSowings = chemicalsSowings;
       this.genotypeses = genotypeses;
       this.sowingTypeses = sowingTypeses;
       this.chemicalsControlses = chemicalsControlses;
       this.weedses = weedses;
       this.seedsOriginses = seedsOriginses;
    }
   
     @Id @GeneratedValue(strategy=IDENTITY)
    
    @Column(name="id_cro_typ", unique=true, nullable=false)
    public Integer getIdCroTyp() {
        return this.idCroTyp;
    }
    
    public void setIdCroTyp(Integer idCroTyp) {
        this.idCroTyp = idCroTyp;
    }
    
    @Column(name="name_cro_typ", length=45)
    public String getNameCroTyp() {
        return this.nameCroTyp;
    }
    
    public void setNameCroTyp(String nameCroTyp) {
        this.nameCroTyp = nameCroTyp;
    }
    
    @Column(name="status_cro_typ")
    public Boolean getStatusCroTyp() {
        return this.statusCroTyp;
    }
    
    public void setStatusCroTyp(Boolean statusCroTyp) {
        this.statusCroTyp = statusCroTyp;
    }
@ManyToMany(cascade=CascadeType.ALL, fetch=FetchType.LAZY)
    @JoinTable(name="residuals_clasifications_crops_types", catalog="madr_bd10", joinColumns = { 
        @JoinColumn(name="id_crop_type_cro_typ", nullable=false, updatable=false) }, inverseJoinColumns = { 
        @JoinColumn(name="id_residuals_cla_cro_typ", nullable=false, updatable=false) })
    public Set getResidualsClasifications() {
        return this.residualsClasifications;
    }
    
    public void setResidualsClasifications(Set residualsClasifications) {
        this.residualsClasifications = residualsClasifications;
    }
@ManyToMany(cascade=CascadeType.ALL, fetch=FetchType.LAZY)
    @JoinTable(name="diseases_crops_types", catalog="madr_bd10", joinColumns = { 
        @JoinColumn(name="id_crop_type_dis_cro_typ", nullable=false, updatable=false) }, inverseJoinColumns = { 
        @JoinColumn(name="id_disease_dis_cro_typ", nullable=false, updatable=false) })
    public Set getDiseaseses() {
        return this.diseaseses;
    }
    
    public void setDiseaseses(Set diseaseses) {
        this.diseaseses = diseaseses;
    }
@ManyToMany(cascade=CascadeType.ALL, fetch=FetchType.LAZY)
    @JoinTable(name="resutling_products_crops_types", catalog="madr_bd10", joinColumns = { 
        @JoinColumn(name="id_crop_type_res_pro_cro", nullable=false, updatable=false) }, inverseJoinColumns = { 
        @JoinColumn(name="id_resulting_product_res_pro_cro", nullable=false, updatable=false) })
    public Set getResultingProductses() {
        return this.resultingProductses;
    }
    
    public void setResultingProductses(Set resultingProductses) {
        this.resultingProductses = resultingProductses;
    }
@ManyToMany(cascade=CascadeType.ALL, fetch=FetchType.LAZY)
    @JoinTable(name="pests_crops_types", catalog="madr_bd10", joinColumns = { 
        @JoinColumn(name="id_crop_type_pes_cro_typ", nullable=false, updatable=false) }, inverseJoinColumns = { 
        @JoinColumn(name="id_pest_pes_cro_typ", nullable=false, updatable=false) })
    public Set getPestses() {
        return this.pestses;
    }
    
    public void setPestses(Set pestses) {
        this.pestses = pestses;
    }
@ManyToMany(cascade=CascadeType.ALL, fetch=FetchType.LAZY)
    @JoinTable(name="crops_markets", catalog="madr_bd10", joinColumns = { 
        @JoinColumn(name="id_crop_type_cro_mar", nullable=false, updatable=false) }, inverseJoinColumns = { 
        @JoinColumn(name="id_market_cro_mar", nullable=false, updatable=false) })
    public Set getMarketses() {
        return this.marketses;
    }
    
    public void setMarketses(Set marketses) {
        this.marketses = marketses;
    }
@OneToMany(cascade=CascadeType.ALL, fetch=FetchType.LAZY, mappedBy="cropsTypes")
    public Set getIntercroppings() {
        return this.intercroppings;
    }
    
    public void setIntercroppings(Set intercroppings) {
        this.intercroppings = intercroppings;
    }
@ManyToMany(cascade=CascadeType.ALL, fetch=FetchType.LAZY)
    @JoinTable(name="genotypes_sowing_crop_types", catalog="madr_bd10", joinColumns = { 
        @JoinColumn(name="id_crop_type_gen_sow_cro", nullable=false, updatable=false) }, inverseJoinColumns = { 
        @JoinColumn(name="id_gentoypes_sowing_gen_sow_cro", nullable=false, updatable=false) })
    public Set getGenotypesSowings() {
        return this.genotypesSowings;
    }
    
    public void setGenotypesSowings(Set genotypesSowings) {
        this.genotypesSowings = genotypesSowings;
    }
@ManyToMany(cascade=CascadeType.ALL, fetch=FetchType.LAZY)
    @JoinTable(name="organic_controls_crops_types", catalog="madr_bd10", joinColumns = { 
        @JoinColumn(name="id_crop_type_cro_typ", nullable=false, updatable=false) }, inverseJoinColumns = { 
        @JoinColumn(name="id_org_control_cro_typ", nullable=false, updatable=false) })
    public Set getOrganicControlses() {
        return this.organicControlses;
    }
    
    public void setOrganicControlses(Set organicControlses) {
        this.organicControlses = organicControlses;
    }
@ManyToMany(cascade=CascadeType.ALL, fetch=FetchType.LAZY)
    @JoinTable(name="controls_types_crops_types", catalog="madr_bd10", joinColumns = { 
        @JoinColumn(name="id_crop_type_con_typ_cro", nullable=false, updatable=false) }, inverseJoinColumns = { 
        @JoinColumn(name="id_control_type_con_typ_cro", nullable=false, updatable=false) })
    public Set getControlsTypeses() {
        return this.controlsTypeses;
    }
    
    public void setControlsTypeses(Set controlsTypeses) {
        this.controlsTypeses = controlsTypeses;
    }
@OneToMany(cascade=CascadeType.ALL, fetch=FetchType.LAZY, mappedBy="cropsTypes")
    public Set getFertilizationses() {
        return this.fertilizationses;
    }
    
    public void setFertilizationses(Set fertilizationses) {
        this.fertilizationses = fertilizationses;
    }
@ManyToMany(cascade=CascadeType.ALL, fetch=FetchType.LAZY)
    @JoinTable(name="preparations_types_crops_types", catalog="madr_bd10", joinColumns = { 
        @JoinColumn(name="id_crop_type_pre_typ_cro", nullable=false, updatable=false) }, inverseJoinColumns = { 
        @JoinColumn(name="id_preparation_type_pre_typ_cro", nullable=false, updatable=false) })
    public Set getPreparationsTypeses() {
        return this.preparationsTypeses;
    }
    
    public void setPreparationsTypeses(Set preparationsTypeses) {
        this.preparationsTypeses = preparationsTypeses;
    }
@OneToMany(cascade=CascadeType.ALL, fetch=FetchType.LAZY, mappedBy="cropsTypes")
    public Set getProductionEventses() {
        return this.productionEventses;
    }
    
    public void setProductionEventses(Set productionEventses) {
        this.productionEventses = productionEventses;
    }
@ManyToMany(cascade=CascadeType.ALL, fetch=FetchType.LAZY)
    @JoinTable(name="irrigations_types_crops_types", catalog="madr_bd10", joinColumns = { 
        @JoinColumn(name="id_crop_type_irr_typ_cro", nullable=false, updatable=false) }, inverseJoinColumns = { 
        @JoinColumn(name="id_irrigation_type_irr_typ_cro", nullable=false, updatable=false) })
    public Set getIrrigationsTypeses() {
        return this.irrigationsTypeses;
    }
    
    public void setIrrigationsTypeses(Set irrigationsTypeses) {
        this.irrigationsTypeses = irrigationsTypeses;
    }
@OneToMany(cascade=CascadeType.ALL, fetch=FetchType.LAZY, mappedBy="cropsTypes")
    public Set getLandUsesMarketses() {
        return this.landUsesMarketses;
    }
    
    public void setLandUsesMarketses(Set landUsesMarketses) {
        this.landUsesMarketses = landUsesMarketses;
    }
@ManyToMany(cascade=CascadeType.ALL, fetch=FetchType.LAZY)
    @JoinTable(name="chemicals_sowing_crops_types", catalog="madr_bd10", joinColumns = { 
        @JoinColumn(name="id_crop_type_che_sow_cro_typ", nullable=false, updatable=false) }, inverseJoinColumns = { 
        @JoinColumn(name="id_chemical_sowing_che_sow_cro_typ", nullable=false, updatable=false) })
    public Set getChemicalsSowings() {
        return this.chemicalsSowings;
    }
    
    public void setChemicalsSowings(Set chemicalsSowings) {
        this.chemicalsSowings = chemicalsSowings;
    }
@OneToMany(cascade=CascadeType.ALL, fetch=FetchType.LAZY, mappedBy="cropsTypes")
    public Set getGenotypeses() {
        return this.genotypeses;
    }
    
    public void setGenotypeses(Set genotypeses) {
        this.genotypeses = genotypeses;
    }
@ManyToMany(cascade=CascadeType.ALL, fetch=FetchType.LAZY)
    @JoinTable(name="sowing_types_crops_types", catalog="madr_bd10", joinColumns = { 
        @JoinColumn(name="id_crop_type_sow_typ_cro", nullable=false, updatable=false) }, inverseJoinColumns = { 
        @JoinColumn(name="id_sowing_type_sow_typ_cro", nullable=false, updatable=false) })
    public Set getSowingTypeses() {
        return this.sowingTypeses;
    }
    
    public void setSowingTypeses(Set sowingTypeses) {
        this.sowingTypeses = sowingTypeses;
    }
@ManyToMany(cascade=CascadeType.ALL, fetch=FetchType.LAZY)
    @JoinTable(name="chemicals_controls_crops_types", catalog="madr_bd10", joinColumns = { 
        @JoinColumn(name="id_crop_type_che_con_cro_typ", nullable=false, updatable=false) }, inverseJoinColumns = { 
        @JoinColumn(name="id_che_controls_che_con_cro_typ", nullable=false, updatable=false) })
    public Set getChemicalsControlses() {
        return this.chemicalsControlses;
    }
    
    public void setChemicalsControlses(Set chemicalsControlses) {
        this.chemicalsControlses = chemicalsControlses;
    }
@ManyToMany(cascade=CascadeType.ALL, fetch=FetchType.LAZY)
    @JoinTable(name="weeds_crops_types", catalog="madr_bd10", joinColumns = { 
        @JoinColumn(name="id_crop_type_wee_cro", nullable=false, updatable=false) }, inverseJoinColumns = { 
        @JoinColumn(name="id_weed_wee_cro", nullable=false, updatable=false) })
    public Set getWeedses() {
        return this.weedses;
    }
    
    public void setWeedses(Set weedses) {
        this.weedses = weedses;
    }
@ManyToMany(cascade=CascadeType.ALL, fetch=FetchType.LAZY)
    @JoinTable(name="seeds_origin_crops_types", catalog="madr_bd10", joinColumns = { 
        @JoinColumn(name="id_crop_type_see_ori_cro", nullable=false, updatable=false) }, inverseJoinColumns = { 
        @JoinColumn(name="id_seed_ori_see_ori_cro", nullable=false, updatable=false) })
    public Set getSeedsOriginses() {
        return this.seedsOriginses;
    }
    
    public void setSeedsOriginses(Set seedsOriginses) {
        this.seedsOriginses = seedsOriginses;
    }




}


